Electronic commerce is hampered by privacy and security, as there is a requirement to ensure that the sender of an electronic transmission is in fact who they purport to be. Due to the non-physical nature of the medium, traditional methods of physically marking the media with a seal or signature, for various business and legal purposes, are not practical. Rather, some mark must be coded into the information itself in order to identify the source, authenticate the contents, and provide privacy against eavesdroppers.
Public key cryptography is the basis for a number of popular digital signature and key management schemes. These include Diffie-Hellman key agreement and the RSA, DSA, and ECDSA digital signature algorithms. Public key algorithms are typically combined with other cryptographic algorithms (e.g. DES) and security protocols (e.g. SSL) to provide a wide range of sophisticated and scalable security services such as authentication, confidentiality, and integrity.
Public key cryptography uses a pair of cryptographic keys—one private and one public. Public key cryptography provides an elegant architecture for authentication and authorization, on any kind of communication channel. The Private key is kept secret and used to create digital signatures and decrypt encrypted messages. The public key of the user can be published and used by others to confirm the validity of a digital signature or to encrypt a message to the owner of the corresponding private key.
A public-key certificate binds a public-key value to a set of information that identifies an entity (such as a person, organization, account or site) associated with use of the corresponding private key.
In order to permit one correspondent to communicate securely with another it is necessary that each is confident of the authenticity of the other and that the public key used by are of the correspondents to verify signatures or decrypt messages is in fact the public key of the other correspondent. This is typically achieved through the use of a certificate issued by a party trusted by both correspondents. The initiating correspondent requests the trusted party to sign the public key with the trusted parties own private key and thereby create a certificate.
The certificate may then be forwarded to the recipient correspondent who has the trusted parties public key. The recipient can therefore verify the initiating correspondent's public key and proceed with a communication.
The trusted party is usually a certifying authority or CA and the CA's public key will be embedded in or provided to the correspondents devices when they subscribe to the infrastructure organized by the CA. There is therefore a high degree of confidence that the CA's public key is accurate and genuine.
Usually a CA is responsible for several tasks. These may include, without restriction:
Receiving certificate requests;
Validating that the requesting entity has control of the private key matching the requested public key (proof of possession);
Validating the conformance of the request with local policy, including restrictions on identifying information, attribute information and/or keying material;
Modifying the request to create conformance with local policy,
Validating the information in the request against external data sources;
Determining if the request has been authenticated by the user or some other authority;
Presenting the request for manual approval by an administrator or administrators;
Signing or authenticating the certificate;
Publishing the certificate to a central storage point or multiple storage points; and
Returning the certificate to the requestor.
The infrastructure organized under the CA is known as a public key infrastructure (PKI) and commonly defined as a set of hardware, software, people, policies and procedures needed to create, manage, store, distribute, revoke and destroy certificates and keys based on public key cryptography, in a distributed computing system. A PKI may include a certificate issuing and management system (CIMS) whereby includes the components of the PKI that are responsible for the issuance, revocation and overall management of the certificates and certificate status information. A CIMS includes a CA and may include Registration Authorities (RAs), and other subcomponents.
The advent of new technologies, such as 2.5 G and 3 G networks, which provide enough bandwidth to support audio and video content, and seamless global roaming for voice and data has given rise to a new class of mobile devices such as network-connected personal digital assistants (PDAs) and WAP-enabled mobile phones generally referred to as constrained devices. This trend effectively extends traditional personal computer application services to mobile devices, such that traditional e-commerce is performed on mobile devices, that is, mobile commerce. As in e-commerce there is still a need for the client to provide identification, authentication and authorization to the merchant, authentication being the act of verifying the claimed identity of the station or originator, while authentication involves the use of certificates via a certification authority.
However, there exists a problem with the current methods for obtaining mobile certificates from a certification authority due to bandwidth constraints, network latency, and the limitations of the resources of the mobile device such as processor power, speed and memory storage. Certificates are characteristically large pieces of data such that transmission times between the mobile device and the certification authority, or between a pair of mobile devices, may lead to substantial bandwidth usage during transactions and raise issues with data integrity.
It has previously been proposed to reduce the bandwidth in the exchange of such certificates by storing the certificates at a server and allocating an identifier to the stored location. The initiating client may then receive the URL, or other location indicator, of the certificate, which can then be forwarded to the other correspondent. The other correspondent may then retrieve the certificate and verify the information provided. This arrangement reduces the bandwidth needed compared with transmitting a fill certificate but does not reduce the number of messages transmitted between the client and the RA or CA, and thus does not affect the significant network latency burden that results, especially when hundreds or thousands of certificate requests per minute may be handled by the CA.
Accordingly, it is an object of the present invention to obviate mitigate at least one of the above disadvantages.